1: | minus(n__0,Y) | → 0 | |
2: | minus(n__s(X),n__s(Y)) | → minus(activate(X),activate(Y)) | |
3: | geq(X,n__0) | → true | |
4: | geq(n__0,n__s(Y)) | → false | |
5: | geq(n__s(X),n__s(Y)) | → geq(activate(X),activate(Y)) | |
6: | div(0,n__s(Y)) | → 0 | |
7: | div(s(X),n__s(Y)) | → if(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0) | |
8: | if(true,X,Y) | → activate(X) | |
9: | if(false,X,Y) | → activate(Y) | |
10: | 0 | → n__0 | |
11: | s(X) | → n__s(X) | |
12: | div(X1,X2) | → n__div(X1,X2) | |
13: | minus(X1,X2) | → n__minus(X1,X2) | |
14: | activate(n__0) | → 0 | |
15: | activate(n__s(X)) | → s(activate(X)) | |
16: | activate(n__div(X1,X2)) | → div(activate(X1),X2) | |
17: | activate(n__minus(X1,X2)) | → minus(X1,X2) | |
18: | activate(X) | → X | |
19: | MINUS(n__0,Y) | → 0# | |
20: | MINUS(n__s(X),n__s(Y)) | → MINUS(activate(X),activate(Y)) | |
21: | MINUS(n__s(X),n__s(Y)) | → ACTIVATE(X) | |
22: | MINUS(n__s(X),n__s(Y)) | → ACTIVATE(Y) | |
23: | GEQ(n__s(X),n__s(Y)) | → GEQ(activate(X),activate(Y)) | |
24: | GEQ(n__s(X),n__s(Y)) | → ACTIVATE(X) | |
25: | GEQ(n__s(X),n__s(Y)) | → ACTIVATE(Y) | |
26: | DIV(s(X),n__s(Y)) | → IF(geq(X,activate(Y)),n__s(n__div(n__minus(X,activate(Y)),n__s(activate(Y)))),n__0) | |
27: | DIV(s(X),n__s(Y)) | → GEQ(X,activate(Y)) | |
28: | DIV(s(X),n__s(Y)) | → ACTIVATE(Y) | |
29: | IF(true,X,Y) | → ACTIVATE(X) | |
30: | IF(false,X,Y) | → ACTIVATE(Y) | |
31: | ACTIVATE(n__0) | → 0# | |
32: | ACTIVATE(n__s(X)) | → S(activate(X)) | |
33: | ACTIVATE(n__s(X)) | → ACTIVATE(X) | |
34: | ACTIVATE(n__div(X1,X2)) | → DIV(activate(X1),X2) | |
35: | ACTIVATE(n__div(X1,X2)) | → ACTIVATE(X1) | |
36: | ACTIVATE(n__minus(X1,X2)) | → MINUS(X1,X2) | |